package top.huhuiyu.springboot2.study.tasks;

import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import top.huhuiyu.springboot2.study.mapper.UtilMapper;
import top.huhuiyu.springboot2.study.service.TbJokeService;

/**
 * @author 胡辉煜
 */
@Component
@Slf4j
@RequiredArgsConstructor
public class AutoTasks {
  private final UtilMapper utilMapper;
  private final TbJokeService tbJokeService;

  // @Scheduled 是配置定时任务的注解
  // fixedDelay表示间隔多少毫秒执行一次
  // initialDelay表示第一次执行要延迟多少毫秒
  // cron是cron表达式，分别表示秒 分 时 日 月 星期几
  @Scheduled(fixedDelay = 60 * 1000, initialDelay = 60 * 1000)
  public void displayTime() {
//    log.debug("延迟显示数据库时间{}", utilMapper.queryNow());
  }

  @Scheduled(cron = "5,35 * * * * ?")
  public void displayTime2() {
//    log.debug("定时显示数据库时间{}", utilMapper.queryNow());
  }


  @Scheduled(cron = "17 0/2 * * * ?")
  public void saveJoke() {
//    log.debug("定时保存笑话数量：{}", tbJokeService.saveJoke());
  }

}
